home *** CD-ROM | disk | FTP | other *** search
Oberon Document | 1995-03-07 | 6.9 KB | 181 lines | [oODC/obnF] |
- Documents.StdDocumentDesc
- Documents.DocumentDesc
- Containers.ViewDesc
- Views.ViewDesc
- Stores.StoreDesc
- Documents.ModelDesc
- Containers.ModelDesc
- Models.ModelDesc
- Stores.ElemDesc
- TextViews.StdViewDesc
- TextViews.ViewDesc
- TextModels.StdModelDesc
- TextModels.ModelDesc
- TextModels.AttributesDesc
- Geneva
- Geneva
- Geneva
- Geneva
- MODULE MacTextEdit;
- IMPORT SYSTEM, MacTypes, MacQuickDraw, MacCQuickDraw;
- CONST
- teJustLeft* = 0;
- teJustCenter* = 1;
- teJustRight* = -1;
- TEScrpHandle = 0AB4H;
- TEScrpLength = 0AB0H;
- TEXT = 54455854H;
- HANDLE = 2;
- UNTAGGED = 1;
- CODE = 1; NOSTKCHK = 4;
- A0 = 8;
- TYPE
- Chars* = ARRAY [UNTAGGED] 32000 OF CHAR;
- CharsPtr* = POINTER TO Chars;
- CharsHandle* = POINTER [HANDLE] TO Chars;
- TERec* = RECORD (MacTypes.Data)
- destRect*: MacTypes.Rect;
- viewRect*: MacTypes.Rect;
- selRect*: MacTypes.Rect;
- lineHeight*: INTEGER;
- fontAscent*: INTEGER;
- selPoint*: MacTypes.Point;
- selStart*: INTEGER;
- selEnd*: INTEGER;
- active: INTEGER;
- wordBreak*: MacTypes.ProcPtr;
- clikLoop*: MacTypes.ProcPtr;
- clickTime: LONGINT;
- clickLoc: INTEGER;
- caretTime: LONGINT;
- caretState: INTEGER;
- just*: INTEGER;
- teLength*: INTEGER;
- hText*: CharsHandle;
- recalBack: INTEGER;
- recalLines: INTEGER;
- clikStuff: INTEGER;
- crOnly*: INTEGER;
- txFont*: INTEGER;
- txFace*: MacTypes.Style;
- txMode*: INTEGER;
- txSize*: INTEGER;
- inPort*: MacQuickDraw.GrafPtr;
- highHook*: MacTypes.ProcPtr;
- caretHook*: MacTypes.ProcPtr;
- nLines*: INTEGER;
- lineStarts*: ARRAY [UNTAGGED] 16000 OF INTEGER
- END;
- TEPtr* = POINTER TO TERec;
- TEHandle* = POINTER [HANDLE] TO TERec;
- ScrpSTElement* = RECORD (MacTypes.Data)
- scrpStartChar*: LONGINT;
- scrpHeight*: INTEGER;
- scrpAscent*: INTEGER;
- scrpFont*: INTEGER;
- scrpFace*: MacTypes.Style;
- scrpSize*: INTEGER;
- scrpColor*: MacCQuickDraw.RGBColor;
- END;
- PROCEDURE [CODE] PutScrap (length: LONGINT; theType: MacTypes.ResType;
- source: MacTypes.Ptr): LONGINT 0A9H, 0FEH;
- PROCEDURE [CODE] GetScrap (hDest: MacTypes.Handle; theType: MacTypes.ResType;
- VAR offset: LONGINT): LONGINT 0A9H, 0FDH;
- PROCEDURE [CODE] hLock 0A0H, 029H;
- PROCEDURE [CODE] hUnlock 0A0H, 02AH;
- PROCEDURE [NOSTKCHK] HLock (h: MacTypes.Handle);
- BEGIN
- SYSTEM.PUTREG(A0, h);
- hLock
- END HLock;
- PROCEDURE [NOSTKCHK] HUnlock (h: MacTypes.Handle);
- BEGIN
- SYSTEM.PUTREG(A0, h);
- hUnlock
- END HUnlock;
- (** Initialization and Allocation **)
- PROCEDURE [CODE] TENew* (destRect, viewRect: MacTypes.Rect): TEHandle 0A9H, 0D2H;
- PROCEDURE [CODE] TEDispose* (hTE: TEHandle) 0A9H, 0CDH;
- (** Accessing the Text of an Edit Record **)
- PROCEDURE [CODE] TESetText* (text: MacTypes.Ptr; length: LONGINT; hTE: TEHandle) 0A9H, 0CFH;
- PROCEDURE [CODE] TEGetText* (hTE: TEHandle): CharsHandle 0A9H, 0CBH;
- (** Insertion Point and Selection Range **)
- PROCEDURE [CODE] TEIdle* (hTE: TEHandle) 0A9H, 0DAH;
- PROCEDURE [CODE] TEClick* (pt: MacTypes.Point; extend: BOOLEAN; hTE: TEHandle) 0A9H, 0D4H;
- PROCEDURE [CODE] TESetSelect* (selStart, selEnd: LONGINT; hTE: TEHandle) 0A9H, 0D1H;
- PROCEDURE [CODE] TEActivate* (hTE: TEHandle) 0A9H, 0D8H;
- PROCEDURE [CODE] TEDeactivate* (hTE: TEHandle) 0A9H, 0D9H;
- (** Editing **)
- PROCEDURE [CODE] TEKey* (key: MacTypes.UnpackedChar; hTE: TEHandle) 0A9H, 0DCH;
- PROCEDURE [CODE] TECut* (hTE: TEHandle) 0A9H, 0D6H;
- PROCEDURE [CODE] TECopy* (hTE: TEHandle) 0A9H, 0D5H;
- PROCEDURE [CODE] TEPaste* (hTE: TEHandle) 0A9H, 0DBH;
- PROCEDURE [CODE] TEDelete* (hTE: TEHandle) 0A9H, 0D7H;
- PROCEDURE [CODE] TEInsert* (text: MacTypes.Ptr; length: LONGINT; hTE: TEHandle) 0A9H, 0DEH;
- (** Text Display and Scrolling **)
- PROCEDURE [CODE] TESetJust* (just: INTEGER; hTE: TEHandle) 0A9H, 0DFH;
- PROCEDURE [CODE] TEUpdate* (rUpdate: MacTypes.Rect; hTE: TEHandle) 0A9H, 0D3H;
- PROCEDURE [CODE] TextBox* (text: MacTypes.Ptr; length: LONGINT;
- box: MacTypes.Rect; just: INTEGER) 0A9H, 0CEH;
- PROCEDURE [CODE] TEScroll* (dh, dv: INTEGER; hTE: TEHandle) 0A9H, 0DDH;
- (** Scrap Handling **)
- PROCEDURE [NOSTKCHK] TEScrapHandle* (): MacTypes.Handle;
- VAR handle: MacTypes.Handle;
- BEGIN
- SYSTEM.MOVE(TEScrpHandle, SYSTEM.ADR(handle), 4);
- RETURN handle
- END TEScrapHandle;
- PROCEDURE [NOSTKCHK] TEGetScrapLen* (): LONGINT;
- VAR length: LONGINT;
- BEGIN
- SYSTEM.MOVE(TEScrpLength, SYSTEM.ADR(length), 4);
- RETURN length
- END TEGetScrapLen;
- PROCEDURE [NOSTKCHK] TESetScrapLen* (length: LONGINT);
- BEGIN
- SYSTEM.MOVE(SYSTEM.ADR(length), TEScrpLength, 4)
- END TESetScrapLen;
- PROCEDURE [NOSTKCHK] TEFromScrap* (): MacTypes.OSErr;
- VAR scrap: MacTypes.Handle; res, off: LONGINT;
- BEGIN
- scrap := TEScrapHandle();
- res := GetScrap(scrap, TEXT, off);
- RETURN SHORT(res)
- END TEFromScrap;
- PROCEDURE [NOSTKCHK] TEToScrap* (): MacTypes.OSErr;
- VAR scrap: MacTypes.Handle; res: LONGINT;
- BEGIN
- scrap := TEScrapHandle();
- HLock(scrap);
- res := PutScrap(TEGetScrapLen(), TEXT, scrap);
- HUnlock(scrap);
- RETURN SHORT(res)
- END TEToScrap;
- (** Advanced Routines **)
- PROCEDURE [NOSTKCHK] SetWordBreak* (wBrkProc: MacTypes.ProcPtr; hTE: TEHandle);
- BEGIN
- hTE.wordBreak := wBrkProc
- END SetWordBreak;
- PROCEDURE [NOSTKCHK] SetClikLoop* (clikProc: MacTypes.ProcPtr; hTE: TEHandle);
- BEGIN
- hTE.clikLoop := clikProc
- END SetClikLoop;
- PROCEDURE [CODE] TECalText* (hTE: TEHandle) 0A9H, 0D0H;
- (** 128K ROM **)
- PROCEDURE [CODE] TESelView* (hTE: TEHandle) 0A8H, 011H;
- PROCEDURE [CODE] TEPinScroll* (dh, dv: INTEGER; hTE: TEHandle) 0A8H, 012H;
- PROCEDURE [CODE] TEAutoView* (auto: BOOLEAN; hTE: TEHandle) 0A8H, 013H;
- PROCEDURE [CODE] TEInit* 0A9H, 0CCH;
- END MacTextEdit.
- TextControllers.StdCtrlDesc
- TextControllers.ControllerDesc
- Containers.ControllerDesc
- Controllers.ControllerDesc
- TextRulers.StdRulerDesc
- TextRulers.RulerDesc
- TextRulers.StdStyleDesc
- TextRulers.StyleDesc
- TextRulers.AttributesDesc
- Geneva
- Documents.ControllerDesc
-